/*----------------------
  QTMusicLib.H header file

  http://www.tunesmithy.co.uk/playmidilib/index.htm

  E-mail support@tunesmithy.co.uk

  (c) Robert Walker 2002
----------------------*/

#define compile_QTM_as_DLL
#ifdef compile_QTM_as_DLL
#ifdef __cplusplus
#define QTM_DLL_EXPORT extern "C" __declspec (dllexport)
#else
#define QTM_DLL_EXPORT __declspec (dllexport)
#endif
#define QTM_DLL_CALLBACK    __stdcall

#else
#define QTM_DLL_EXPORT
#define QTM_DLL_CALLBACK
#endif

#define MAX_QT_MIDI_CHANNELS 32
#define MAX_QT_GM_DEVICE_EMULATIONS 16
#define NON_MELODIC_PERCUSSION_CHANNEL 9

extern QTM_DLL_EXPORT void QTM_DLL_CALLBACK QTMusic_CleanUp_SME (void);
extern QTM_DLL_EXPORT int QTM_DLL_CALLBACK QTMusic_Initialise_SME (void) ;
extern QTM_DLL_EXPORT void QTM_DLL_CALLBACK QTMusic_Delay (double dDelay);
extern QTM_DLL_EXPORT void QTM_DLL_CALLBACK QTMusic_SendMidiEvent (int iStatus,int iChannel,int iData1,int iData2);
extern QTM_DLL_EXPORT int QTM_DLL_CALLBACK QTMusic_SendMidiEventForGmDevEm (int iGmDevEm,int iStatus,int iChannel,int iData1,int iData2);
#define MIDI_NOTE_ON 0x90
#define MIDI_NOTE_OFF 0x80
#define MIDI_CONTROLLER 0xB0
#define MIDI_SET_PATCH 0xC0
#define MIDI_PITCH_BEND 0xE0
